﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class admincp_qlkhoilop : AdminPage
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }

    protected void Page_PreRender(object sender, EventArgs e)
    {
        switch (Request.QueryString["hanhdong"].ToString().ToLower())
        {
            case "themmoi":
                lblLoaiHanhdong.Text = "Thêm mới khối lớp:";
                break;
            case "capnhat":
                lblLoaiHanhdong.Text = "Cập nhật khối lớp:";

                //Kiểm tra xem query string magiaovien có tồn tại và giá trị có tồn tại trong CSDL
                if (Request.QueryString["makhoilop"] != null && KiemTraTonTaiMaKhoiLop(Request.QueryString["makhoilop"].ToString()))
                {
                    //Tạo Seesion["MaKhoiLop"] chứa mã môn học dùng kiểm tra mã môn học với mã môn học trong Query String khi tiến hành lưu
                    Session["MaKhoiLop"] = Request.QueryString["makhoilop"].ToString();
                    KhoiLop khoilop = db.KhoiLops.Single(kl => kl.MaKhoiLop == Session["MaKhoiLop"].ToString());
                    txtMaKhoiLop.Text = khoilop.MaKhoiLop;
                    txtMaKhoiLop.ReadOnly = true;
                    txtMaKhoiLop.Enabled = false;
                    txtTenKhoiLop.Text = khoilop.TenKhoiLop;
                    radSuDung.Checked = khoilop.TrangThai != null ? (bool)khoilop.TrangThai : false;
                    radKhongSuDung.Checked = khoilop.TrangThai != null ? !(bool)khoilop.TrangThai : true;
                }
                else //Chuyển trang sang trang báo lỗi
                {
                }
                break;
        }
    }

    private bool KiemTraTonTaiMaKhoiLop(string MaKhoiLop)
    {
        try
        {
            //Nếu tìm không thấy thì phát sinh lỗi --> chuyển sang khối lệnh catch
            KhoiLop khoilop = db.KhoiLops.Single(kl => kl.MaKhoiLop == MaKhoiLop);
            return true;
        }
        catch
        {
            return false;
        }
    }

    protected void LuuKhoiLop(object sender, EventArgs e)
    {
        try
        {
            KhoiLop khoilop = new KhoiLop();
            switch (Request.QueryString["hanhdong"].ToString().ToLower())
            {
                case "themmoi":
                    khoilop.MaKhoiLop = txtMaKhoiLop.Text;
                    khoilop.TenKhoiLop = txtTenKhoiLop.Text;
                    khoilop.TrangThai = radSuDung.Checked;
                    db.KhoiLops.InsertOnSubmit(khoilop);
                    db.SubmitChanges();
                    Response.Redirect("khoilop.aspx");
                    break;
                case "capnhat":
                    if (Session["MaKhoiLop"].ToString() == Request.QueryString["makhoilop"].ToString())
                    {
                        khoilop = db.KhoiLops.Single(kl => kl.MaKhoiLop == Session["MaKhoiLop"].ToString());
                        khoilop.TenKhoiLop = txtTenKhoiLop.Text;
                        khoilop.TrangThai = radSuDung.Checked;
                        db.SubmitChanges();
                        if (Session["MaKhoiLop"] != null)
                            Session.Remove("MaKhoiLop");
                        Response.Redirect("khoilop.aspx");
                    }
                    else //Chuyển trang sang trang báo lỗi
                    {
                    }
                    break;
                default: //Chuyển trang sang trang báo lỗi
                    break;
            }

        }
        catch
        {

        }
    }
}